package org.biloxi.builders.verbs.cardverbs.whens.impl;

import java.util.Set;

import org.biloxi.builders.subjects.cardsubjects.WhenCardSubject;
import org.biloxi.builders.verbs.cardverbs.impl.AbstractWhenCardVerb;
import org.biloxi.commands.Command;
import org.biloxi.commands.CommandRepository;
import org.biloxi.commands.Filter;
import org.biloxi.commands.Listener;
import org.biloxi.commands.playcard.PlayCard;
import org.biloxi.commands.playcard.PlayCard.Options;
import org.biloxi.commands.playcard.PlayCard.Result;
import org.biloxi.model.GameState;

public class IsPlayedImpl extends AbstractWhenCardVerb implements org.biloxi.builders.verbs.cardverbs.whens.IsPlayed {

	public IsPlayedImpl(WhenCardSubject wcs) {
		super(wcs);
	}

	public void assignListeners(final GameState g, final CommandRepository cmds, final Set<Listener<?, ?>> listeners) {
		cmds.playCard().do_(
			new Listener<PlayCard.Options,PlayCard.Result>(){
				public void handle(Command<Options, Result> cmd, Options options,
					Result result, GameState g) {
				
			}
		},
			new Filter<PlayCard.Result>(){
				private final GameState myG = g;
				public boolean allow(Result t) {
					return false;
				}
			});
	}
	
}
